namespace CSharpPro._0928;

public class Demo
{
    public void TestPrint4()
    {
        Console.WriteLine("1000以内的水仙花数有：");
        // 遍历100到999之间的数（因为水仙花数是三位数）
        for (int i = 100; i < 1000; i++)
        {
            int hundreds = i / 100; // 百位数字
            int tens = (i / 10) % 10; // 十位数字
            int units = i % 10; // 个位数字
            // 判断是否为水仙花数
            if (Math.Pow(hundreds, 3) + Math.Pow(tens, 3) + Math.Pow(units, 3) == i)
            {
                Console.WriteLine(i);
            }
        }
    }

    public void TestPrint5()
    {
        Console.WriteLine("100以内的质数有：");
        // 从2开始遍历到100（因为1不是质数）
        for (int i = 2; i <= 100; i++)
        {
            bool isPrime = true;
            // 遍历2到i的平方根，判断是否有因数
            for (int j = 2; j * j <= i; j++)
            {
                if (i % j == 0)
                {
                    isPrime = false;
                    break;
                }
            }
            if (isPrime)
            {
                Console.WriteLine(i);
            }
        }
    }
}